package com.health.system.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.health.system.dto.MenuTreeListDTO;
import com.health.system.entity.Menu;
import com.health.system.vo.MenuTreeListSearchVo;
import com.health.system.vo.UpdateStatusVo;

import java.util.List;


public interface MenuService extends IService<Menu> {
    /**
     * 菜单权限树形列表
     *
     * @param vo 搜索条件 {@link MenuTreeListSearchVo}
     * @return /
     */
    List<MenuTreeListDTO> treeList(MenuTreeListSearchVo vo);

    /**
     * 根据ID删除菜单
     *
     * @param id 菜单ID
     */
    void deleteById(Long id);

    /**
     * 更新菜单隐藏状态
     *
     * @param vo 状态数据 {@link UpdateStatusVo}
     */
    void updateStatus(UpdateStatusVo vo);

    /**
     * 获取用户菜单信息
     * @return /
     */
    List<MenuTreeListDTO> menuByUser();
}
